home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 July: Mac OS SDK / Dev.CD Jul 96 SDK / Dev.CD Jul 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc Development Framework / ODFDev / ODF / Framewrk / FWPart / Include / FWClnInf.h < prev    next >
Encoding:
Text File  |  1996-04-25  |  4.3 KB  |  146 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                FWClnInf.h
  4. //    Release Version:    $ ODF 1 $
  5. //
  6. //    Copyright:            (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //
  8. //========================================================================================
  9.  
  10. #ifndef FWCLNINF_H
  11. #define FWCLNINF_H
  12.  
  13. #ifndef FWSELECT_H
  14. #include "FWSelect.h"
  15. #endif
  16.  
  17. // ----- ODF Foundation Includes -----
  18.  
  19. #ifndef FWSTDEF_H
  20. #include "FWStdDef.h"
  21. #endif
  22.  
  23. #ifndef FWCLAINF_H
  24. #include "FWClaInf.h"
  25. #endif
  26.  
  27. #ifndef FWITERS_H
  28. #include "FWIters.h"
  29. #endif
  30.  
  31. #ifndef FWTCOLL_H
  32. #include "FWTColl.h"
  33. #endif
  34.  
  35. //========================================================================================
  36. //    Forward Declarations
  37. //========================================================================================
  38.  
  39. class ODDraft;
  40. class ODShape;
  41.  
  42. class FW_CFrame;
  43. class FW_CDataInterchange;
  44.  
  45. //========================================================================================
  46. //    class FW_CCloneInfo
  47. //========================================================================================
  48.  
  49. class FW_CCloneInfo
  50. {
  51. //----------------------------------------------------------------------------------------
  52. //    Constructors/Destructor
  53. //
  54. public:
  55.     FW_DECLARE_AUTO(FW_CCloneInfo)
  56.  
  57.     FW_CCloneInfo(Environment* ev,
  58.                 ODDraft* fromDraft, 
  59.                 FW_CFrame* scopeFrame, 
  60.                 ODCloneKind cloneKind);
  61.     FW_CCloneInfo(Environment* ev,
  62.                 ODDraftKey key,
  63.                 ODDraft* fromDraft, 
  64.                 FW_CFrame* scopeFrame, 
  65.                 ODCloneKind cloneKind);
  66.     ~FW_CCloneInfo();
  67.  
  68. //----------------------------------------------------------------------------------------
  69. //    API
  70. //
  71. public:
  72.     void                    BeginClone(Environment* ev, ODDraft* destinationDraft);
  73.     void                    EndClone(Environment* ev);
  74.     void                    AbortClone(Environment* ev);
  75.     
  76.     ODID                    Clone(Environment* ev,
  77.                                 ODID fromObjectID,
  78.                                 ODID toObjectID,
  79.                                 ODID scope);
  80.     
  81.     FW_CFrame*                GetScopeFrame(Environment* ev) const;
  82.     ODCloneKind                GetCloneKind(Environment* ev) const;
  83.     ODDraft*                GetFromDraft(Environment* ev) const;
  84.     ODDraft*                GetToDraft(Environment* ev) const;
  85.     FW_CDataInterchange*    GetDataInterchange(Environment* ev) const;
  86.     ODDraftKey                GetDraftKey(Environment* ev) const;
  87.     
  88. //----------------------------------------------------------------------------------------
  89. //    Data Members
  90. //
  91. public:
  92.     FW_TOrderedCollection<FW_MProxy>*    fClonedProxyList;            // out    Cloning content
  93.     ODID                                fClonedPartID;                // out    Cloning part/Cloning Single Embedded Frame
  94.     ODID                                fClonedFrameID;                // out    Cloning Single Embedded Frame
  95.     ODShape*                            fFrameShape;                // out     Cloning part/Cloning Single Embedded Frame
  96.  
  97. private:
  98.     ODDraftKey                             fKey;                         // in
  99.     ODDraft*                             fFromDraft;                 // in
  100.     FW_CFrame*                             fScopeFrame;                // in
  101.     ODCloneKind                            fCloneKind;                    // in
  102.     FW_Boolean                            fCloning;
  103.     FW_Boolean                            fBeganClone;
  104.     FW_CDataInterchange*                fDataInterchange;
  105.     ODDraft*                             fToDraft;                     // in
  106. };
  107.  
  108. //========================================================================================
  109. //    Inlines
  110. //========================================================================================
  111.  
  112. //----------------------------------------------------------------------------------------
  113. //    FW_CCloneInfo::GetScopeFrame
  114. //----------------------------------------------------------------------------------------
  115. inline FW_CFrame* FW_CCloneInfo::GetScopeFrame(Environment*) const
  116. {
  117.     return fScopeFrame;
  118. }
  119.  
  120. //----------------------------------------------------------------------------------------
  121. //    FW_CCloneInfo::GetCloneKind
  122. //----------------------------------------------------------------------------------------
  123. inline ODCloneKind FW_CCloneInfo::GetCloneKind(Environment*) const
  124. {
  125.     return fCloneKind;
  126. }
  127.  
  128. //----------------------------------------------------------------------------------------
  129. //    FW_CCloneInfo::GetFromDraft
  130. //----------------------------------------------------------------------------------------
  131. inline ODDraft* FW_CCloneInfo::GetFromDraft(Environment*) const
  132. {
  133.     return fFromDraft;
  134. }
  135.  
  136. //----------------------------------------------------------------------------------------
  137. //    FW_CCloneInfo::GetToDraft
  138. //----------------------------------------------------------------------------------------
  139. inline ODDraft* FW_CCloneInfo::GetToDraft(Environment*) const
  140. {
  141.     return fToDraft;
  142. }
  143.  
  144. #endif
  145.  
  146.